if (root != NULL)
{
- gtk_inspector_record_render (widget,
- renderer,
- surface,
- region,
- root);
+ root = gtk_inspector_prepare_render (widget,
+ renderer,
+ surface,
+ region,
+ root);
gsk_renderer_render (renderer, root, region);
return g_object_get_data (G_OBJECT (display), "-gtk-inspector");
}
-void
-gtk_inspector_record_render (GtkWidget *widget,
- GskRenderer *renderer,
- GdkSurface *surface,
- const cairo_region_t *region,
- GskRenderNode *node)
+GskRenderNode *
+gtk_inspector_prepare_render (GtkWidget *widget,
+ GskRenderer *renderer,
+ GdkSurface *surface,
+ const cairo_region_t *region,
+ GskRenderNode *node)
{
GtkInspectorWindow *iw;
iw = gtk_inspector_window_get_for_display (gtk_widget_get_display (widget));
if (iw == NULL)
- return;
+ return node;
/* sanity check for single-display GDK backends */
if (GTK_WIDGET (iw) == widget)
- return;
+ return node;
gtk_inspector_recorder_record_render (GTK_INSPECTOR_RECORDER (iw->widget_recorder),
widget,
surface,
region,
node);
+
+ return node;
}
gboolean
void gtk_inspector_on_inspect (GtkWidget *widget,
GtkInspectorWindow *iw);
-void gtk_inspector_window_select_widget_under_pointer (GtkInspectorWindow *iw);
+void gtk_inspector_window_select_widget_under_pointer (GtkInspectorWindow *iw);
-void gtk_inspector_window_rescan (GtkWidget *iw);
+void gtk_inspector_window_rescan (GtkWidget *iw);
-gboolean gtk_inspector_is_recording (GtkWidget *widget);
-void gtk_inspector_record_render (GtkWidget *widget,
- GskRenderer *renderer,
- GdkSurface *surface,
- const cairo_region_t *region,
- GskRenderNode *node);
+gboolean gtk_inspector_is_recording (GtkWidget *widget);
+GskRenderNode * gtk_inspector_prepare_render (GtkWidget *widget,
+ GskRenderer *renderer,
+ GdkSurface *surface,
+ const cairo_region_t *region,
+ GskRenderNode *node);
G_END_DECLS